package com.uzai.console.vo.fd.fddeviceplan;

import com.uzai.console.vo.fd.fddeviceplangroup.FdDevicePlanGroupVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;
import java.util.Set;

/**
 * @Auther: liuqi
 * @Date: 2021/8/10 14:58
 * @Description:
 */
@Data
@ApiModel("发单设备方案详情列表")
public class FdDevicePlanVo {
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("方案名称")
    private String name;

    @ApiModelProperty("是否设置联盟和pid（0-关闭；1-开启）")
    private int tokenSet;

    @ApiModelProperty("淘宝联盟id")
    private Long tbTokenId;
    /**
     * 淘宝pid
     */
    @ApiModelProperty("淘宝pid")
    private String tbPid;
    /**
     * 淘宝渠道id
     */
    @ApiModelProperty("淘宝渠道id")
    private String tbRid;

    /**
     * 淘口令前缀列表（JSON数组）
     */
    @ApiModelProperty("淘口令前缀列表")
    private List<String> pwdpreList;

    /**
     * 淘口令后缀列表（JSON数组）
     */
    @ApiModelProperty("淘口令后缀列表")
    private List<String> pwdsufList;

    /**
     * 中间页类型：0官方快站，1自有域名，2自定义
     */
    @ApiModelProperty("中间页类型：0官方快站，1自有域名，2自定义")
    private Integer middlePageType;

    /**
     * 中间页链接:如果是选的官方就固定：0，自有域名保存域名管理里面的id，自定义就是设置的一个完成的url地址
     */
    @ApiModelProperty("中间页链接:如果是选的官方就固定：0，自有域名保存域名管理里面的id，自定义就是设置的一个完成的url地址")
    private String middlePageUrl;

    /**
     * 京东联盟id
     */
    @ApiModelProperty("京东联盟id")
    private Long jdTokenId;

    /**
     * 拼多多联盟类型（0自有账号，1推老板共享账号）
     */
    @ApiModelProperty("拼多多联盟类型（0自有账号，1推老板共享账号）")
    private Integer pddTokenType;

    /**
     * 拼多多联盟id
     */
    @ApiModelProperty("拼多多联盟id")
    private Long pddTokenId;

    /**
     * 拼多多推老板联盟id
     */
    @ApiModelProperty("拼多多推老板联盟id")
    private Long pddTlbTokenId;

    /**
     * 唯品会联盟id
     */
    @ApiModelProperty("唯品会联盟id")
    private Long vphTokenId;

    /**
     * 抖音账号类型（0自有账号，1推老板共享账号）
     */
    @ApiModelProperty("抖音账号类型（0自有账号，1推老板共享账号）")
    private Integer dyTokenType;

    /**
     * 抖音联盟id
     */
    @ApiModelProperty("抖音联盟id")
    private Long dyTokenId;

    /**
     * 抖音共享推老板联盟id
     */
    @ApiModelProperty("抖音共享推老板联盟id")
    private Long dyTlbTokenId;

    /**
     * 内容发送规则（0-逐群发送：一个任务中同一个内容每个群都发送完成之后，在发送下一个内容； 1-顺序发发送：一个任务中的全部内容在一个群中发送完成之后，在发下一个群）
     */
    @ApiModelProperty("内容发送规则（0-逐群发送：一个任务中同一个内容每个群都发送完成之后，在发送下一个内容； 1-顺序发发送：一个任务中的全部内容在一个群中发送完成之后，在发下一个群）")
    private Integer sendRule;

    /**
     * 群与群之间发送间隔（单位：秒）
     */
    @ApiModelProperty("群与群之间发送间隔（单位：秒）")
    private Integer groupSendGap;

    /**
     * 气氛组人数大于等于内容数（0-气氛机器人随机发；1-气氛机器人按顺序发：按照最后使用时间，越早使用的优先 ）
     */
    @ApiModelProperty("气氛组人数大于等于内容数（0-气氛机器人随机发；1-气氛机器人按顺序发：按照最后使用时间，越早使用的优先 ）")
    private Integer tuoGteContent;

    /**
     * 气氛组人数小于内容数（0-气氛组机器人重复发送；1-超过的内容数不发送）
     */
    @ApiModelProperty("气氛组人数小于内容数（0-气氛组机器人重复发送；1-超过的内容数不发送）")
    private Integer tuoLtContent;

    /**
     * 发送群信息列表
     */
    @ApiModelProperty("发单配置方案群信息列表")
    private List<FdDevicePlanGroupVo> fdDevicePlanGroupVoList;

    @ApiModelProperty("创建时间")
    private Integer createTime;

    /**
     * 托常用发送内容列表
     */
    @ApiModelProperty("托常用发送内容列表")
    private List<TuoComContent> tuoComContentList;

    @Data
    @ApiModel("托常用发送内容对象")
    public static class TuoComContent{
        @ApiModelProperty("关键词")
        private String word;
        @ApiModelProperty("次数")
        private int times;
    }

    @ApiModelProperty("群设备类型列表")
    private Set<String> deviceTypeList;
}
